Support the new state in CSS selectors
authorMatthias Clasen <mclasen@redhat.com>
Tue, 29 Aug 2017 02:26:30 +0000 (22:26 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 25 Oct 2017 21:59:00 +0000 (17:59 -0400)
Make :focus(visible) match the new state.

gtk/gtkcssselector.c

index 961e78ea5c86e704ceaa2048759380cccaf76aa9..e80b4423e6e89e70361f4650c92250a180e43446 100644 (file)
@@ -683,7 +683,8 @@ gtk_css_pseudoclass_name (GtkStateFlags state)
     "link",
     "visited",
     "checked",
-    "drop(active)"
+    "drop(active)",
+    "focus(visible)"
   };
   guint i;
 
@@ -1108,22 +1109,23 @@ parse_selector_pseudo_class (GtkCssParser   *parser,
     int            position_a;
     int            position_b;
   } pseudo_classes[] = {
-    { "first-child",   0,                           POSITION_FORWARD,  0, 1 },
-    { "last-child",    0,                           POSITION_BACKWARD, 0, 1 },
-    { "only-child",    0,                           POSITION_ONLY,     0, 0 },
-    { "active",        GTK_STATE_FLAG_ACTIVE, },
-    { "hover",         GTK_STATE_FLAG_PRELIGHT, },
-    { "selected",      GTK_STATE_FLAG_SELECTED, },
-    { "disabled",      GTK_STATE_FLAG_INSENSITIVE, },
-    { "indeterminate", GTK_STATE_FLAG_INCONSISTENT, },
-    { "focus",         GTK_STATE_FLAG_FOCUSED, },
-    { "backdrop",      GTK_STATE_FLAG_BACKDROP, },
-    { "dir(ltr)",      GTK_STATE_FLAG_DIR_LTR, },
-    { "dir(rtl)",      GTK_STATE_FLAG_DIR_RTL, },
-    { "link",          GTK_STATE_FLAG_LINK, },
-    { "visited",       GTK_STATE_FLAG_VISITED, },
-    { "checked",       GTK_STATE_FLAG_CHECKED, },
-    { "drop(active)",  GTK_STATE_FLAG_DROP_ACTIVE, }
+    { "first-child",    0,                           POSITION_FORWARD,  0, 1 },
+    { "last-child",     0,                           POSITION_BACKWARD, 0, 1 },
+    { "only-child",     0,                           POSITION_ONLY,     0, 0 },
+    { "active",         GTK_STATE_FLAG_ACTIVE, },
+    { "hover",          GTK_STATE_FLAG_PRELIGHT, },
+    { "selected",       GTK_STATE_FLAG_SELECTED, },
+    { "disabled",       GTK_STATE_FLAG_INSENSITIVE, },
+    { "indeterminate",  GTK_STATE_FLAG_INCONSISTENT, },
+    { "focus(visible)", GTK_STATE_FLAG_FOCUS_VISIBLE, },
+    { "focus",          GTK_STATE_FLAG_FOCUSED, },
+    { "backdrop",       GTK_STATE_FLAG_BACKDROP, },
+    { "dir(ltr)",       GTK_STATE_FLAG_DIR_LTR, },
+    { "dir(rtl)",       GTK_STATE_FLAG_DIR_RTL, },
+    { "link",           GTK_STATE_FLAG_LINK, },
+    { "visited",        GTK_STATE_FLAG_VISITED, },
+    { "checked",        GTK_STATE_FLAG_CHECKED, },
+    { "drop(active)",   GTK_STATE_FLAG_DROP_ACTIVE, }
   };
 
   guint i;